/*
 * @(#)cn.design.pattern 2020/4/7/0007
 *
 * Copy Right@ 人人译视界
 */


package cn.design.pattern.single;

/**
 * <pre>
 * @author tuwei
 *
 * @version 0.9
 *
 * 修改版本: 0.9
 * 修改日期: 2020/4/7/0007
 * 修改人 :  tuwei
 * 修改说明: 初步完成
 * 复审人 ：
 * </pre>
 */
public class SingleResponsibility2 {
	public static void main(String[] args) {
		RoadVehicle roadVehicle = new RoadVehicle();
		roadVehicle.run("摩托车");

		AirVehicle airVehicle = new AirVehicle();
		airVehicle.run("飞机");
	}
}

/**
 * 1.遵守了单一职责原则
 * 2.但是这样做改动很大，将类分解，同时修改客户端
 */
class RoadVehicle {
	public void run(String vehicle) {
		System.out.println(vehicle + "公路运行");
	}
}
class AirVehicle {
	public void run(String vehicle) {
		System.out.println(vehicle + "天空运行");
	}
}
class WaterVehicle {
	public void run(String vehicle) {
		System.out.println(vehicle + "水上运行");
	}
}